package com.cencat.framework.file.mapper;

import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.cencat.framework.file.entity.FileInfo;
import org.apache.ibatis.annotations.Mapper;

/**
 * 文件信息Mapper接口
 */
@Mapper
public interface FileInfoMapper extends BaseMapper<FileInfo> {
    
    /**
     * 根据文件KEY查询文件信息
     */
    FileInfo selectByFileKey(String fileKey);
    
    /**
     * 根据MD5哈希查询文件信息
     */
    FileInfo selectByMd5Hash(String md5Hash);
    
    /**
     * 根据业务模块和业务ID查询文件列表
     */
    java.util.List<FileInfo> selectByBusiness(String businessModule, String businessId);
    
    /**
     * 更新文件状态
     */
    int updateStatus(Long id, Integer status);
    
    /**
     * 清理过期临时文件
     */
    int deleteExpiredTemporaryFiles();
}